﻿namespace Strategy
{
    /// <summary>
    /// 抽象策略类
    /// </summary>
    public abstract class Strategy_ABS
    {
        /// <summary>
        /// 算法方法
        /// </summary>
        public abstract string AlgorithmInterface();
    }

    /// <summary>
    /// 具体策略A
    /// </summary>
    public class ConcreteStrategyA : Strategy_ABS
    {
        public override string AlgorithmInterface()
        {
            return "具体策略A实现";
        }
    }

    /// <summary>
    /// 具体策略B
    /// </summary>
    public class ConcreteStrategyB : Strategy_ABS
    {
        public override string AlgorithmInterface()
        {
            return "具体策略B实现";
        }
    }

    /// <summary>
    /// 具体策略C
    /// </summary>
    public class ConcreteStrategyC : Strategy_ABS
    {
        public override string AlgorithmInterface()
        {
            return "具体策略C实现";
        }
    }
}
